From 5f8543fe812fd527f6de21179d8c9f633494f111 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Jonas=20=C3=85dahl?= Date: Wed, 24 Apr 2019 13:33:12 +0200 Subject: [PATCH] wayland: Only check top-most for grabbing popups Non-grabbing popups are not limited to a single nesting stack, as per the spec, so we should not prevent that on the client-side. --- gdk/wayland/gdksurface-wayland.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/gdk/wayland/gdksurface-wayland.c b/gdk/wayland/gdksurface-wayland.c index 529af6f792..7af011b814 100644 --- a/gdk/wayland/gdksurface-wayland.c +++ b/gdk/wayland/gdksurface-wayland.c @@ -2209,10 +2209,11 @@ gdk_wayland_surface_create_xdg_popup (GdkSurface *surface, g_warning ("Can't map popup, already mapped"); return; } - if ((display->current_popups && - g_list_last (display->current_popups)->data != parent) || - (!display->current_popups && - !is_realized_toplevel (parent))) + if (grab_input_seat && + ((display->current_popups && + g_list_last (display->current_popups)->data != parent) || + (!display->current_popups && + !is_realized_toplevel (parent)))) { g_warning ("Tried to map a popup with a non-top most parent"); return; -- 2.30.2